package com.sz.biz.logistics.base.service;

import com.sz.biz.logistics.base.entity.Flight;
import com.sz.biz.logistics.base.dto.FlightDto;
import com.sz.common.base.dto.QueryParams;
import com.sz.common.base.dto.ResultDto;

import java.util.List;

/**
 * Function: FlightService <br>
 * Author: wentao.chang <br>
 * Date: 2017-08-21 15:47:00
 */
public interface FlightService {
    /**
     * 新增航班
     *
     * @param flightDto flightDto
     * @return int
     */
    int save(FlightDto flightDto);

    /**
     * 修改航班
     *
     * @param id        id
     * @param flightDto flightDto
     * @return int
     */
    int update(Integer id, FlightDto flightDto);

    /**
     * 根据ShipIds删除航班
     *
     * @param ids ids
     */
    void deleteByIds(List<Integer> ids);

    /**
     * 根据id查询航班信息
     *
     * @param id id
     * @return FlightDto
     */
    FlightDto findById(int id);

    /**
     * 根据id查询航班信息
     *
     * @param id id
     * @return Flight
     */
    Flight findSimpleById(int id);
    /**
     * 根据ids查询航班信息
     *
     * @param ids ids
     * @return Flight
     */
    List<Flight> findSimpleByIds(List<Integer> ids);

    /**
     * 根据条件分页查询航班
     *
     * @return ResultDto
     */
    ResultDto findFlightListPage(QueryParams params);

    /**
     * 根据条件分页查询航班短接口
     *
     * @return ResultDto
     */
    ResultDto findFlightShortListPage(QueryParams params);

    /**
     * @param code code
     * @param id   id
     */
    void checkCode(String code, Integer id);

}
